package src

import (
     "fmt"
	"net/http"
	"encoding/json"
)

type Road struct {
	Id int `json:"id"`
	Name string `json:"name"`	
	Value bool `json:"value"`	
}

type RoadGroup struct {
	Name string `json:"name"`
	Roads []Road `json:"roads"`
} 

func roadinfoHandler(w http.ResponseWriter, r *http.Request) {
	emp, body := ParseParams(r)
	var linkParam LinkParam
	linkParam.fill(body)
	
	var session *string = nil
	if emp.Auth !=nil {
		session = emp.Auth.Session
	}
		
	var response Response
	if(linkParam.LinkId == nil){
		response = Response{ session, 0, "", getSituation()}
	} else {
	    response = Response{ session, 0, "", getCurrentSpeed()}
	}
	obj,_ := json.Marshal(response)
	fmt.Fprint(w, string(obj))
}


func getSituation() (situation []interface{}){

	situation = append(situation,Title{"title","Сводка"})
	situation = append(situation,Appbutton{"appbutton","Оповещения","roadinfo_subscription","subscription", nil})	
    situation = append(situation,Text{"text","Дорожная ситуация на 9.00 27 июля 2013 года", "Департамент транспорта Москвы сообщает, что по состоянию на 09.00 движение в Москве местами затруднено. Осложнения наблюдаются на Волоколамском, Ленинградском и шоссе Энтузиастов, а также Рязанскому проспекту по направлению в центр. Низкие скорости зафиксированы на востоке внутренней и западе внешней стороны МКАД, также на юге внешней стороны Садового кольца"})
    situation = append(situation,Link{"link","Текущая скорость на основных магистралях", "some_link_id"})
    situation = append(situation,Text{"text","", "В связи с проведением ... перекрыты все дороги. Благодарим за понимание"})
        
	return
}

func getCurrentSpeed() (resp []interface{}){

	resp = append(resp,Title{"title","Текущая скорость"})
	resp = append(resp, Separator{"separator","Радиальные магистрали",""})	
    resp = append(resp, Text2{"text","Ярославское шоссе","20","road_red"})
    resp = append(resp, Text2{"text","Щелковское шоссе","40","road_yellow"})
    resp = append(resp, Text2{"text","Рязанский проспект","60","road_light_green"})
	resp = append(resp, Separator{"separator","Кольцевые магистрали",""})
	resp = append(resp, Text2{"text","Кольцевые магистрали","60","road_green"})	
	            	
    return
}
	
	